home *** CD-ROM | disk | FTP | other *** search
Text File | 1997-06-28 | 1.1 KB | 63 lines | [TEXT/CWIE] |
- // ConstPString.cp
-
- #ifndef ConstPString_h
- #include "ConstPString.h"
- #endif
- #ifndef MinMax_h
- #include "MinMax.h"
- #endif
-
- bool operator==( ConstPString a, ConstPString b )
- {
- if ( a.Length() != b.Length() )
- return false;
-
- for ( uint32 i = 0; i < a.Length(); i++ )
- if ( a[i] != b[i] )
- return false;
-
- return true;
- }
-
- bool operator<( ConstPString a, ConstPString b )
- {
- uint32 matched = Min( a.Length(), b.Length() );
-
- for ( uint32 i = 0; i < matched; i++ )
- if ( a[i] < b[i] )
- return true;
-
- return a.Length() < b.Length();
- }
-
- bool operator<=( ConstPString a, ConstPString b )
- {
- uint32 matched = Min( a.Length(), b.Length() );
-
- for ( uint32 i = 0; i < matched; i++ )
- if ( a[i] > b[i] )
- return false;
-
- return a.Length() <= b.Length();
- }
-
- int32 Compare( ConstPString a, ConstPString b )
- {
- uint32 matched = Min( a.Length(), b.Length() );
-
- for ( uint32 i = 0; i < matched; i++ )
- {
- int32 comparison = int32(a[i]) - int32(b[i]);
- if ( comparison != 0 )
- return comparison;
- }
-
- if ( a.Length() > b.Length() )
- return 1;
-
- if ( a.Length() < b.Length() )
- return -1;
-
- return 0;
- }
-